"Standard Color Generator"
By Andy Guevara
1982
From page 7-4 of "Machine Language Manager" manual


This program's source code was re-typed by Adam Trionfo.  Paul Thacker then 
digitally archived the binary output using tape archiving tools for 300-Baud 
format programs.  Paul made a posting about how it was done:


Subject: Re: MLM Program Loading
From:	ballyalley@yahoogroups.com on behalf of Paul Thacker 
Sent:	Sun 7/28/13 11:25 PM
To: 	ballyalley@yahoogroups.com

OK, I spent some more time with the Machine Language Manager today. After 
reading enough of the instruction manual to figure out how to actually enter 
and run programs, I entered the ASCII Character Generator hex code. I saved it 
to tape (well, my PC) by entering:

*[WRITE]4F30[ADDR]4F3B[LIST]

I'm denoting keywords in brackets here.

When I processed the recording and converted it to a text file, I got this.

4F30:4F3B
4F30: CD 05 24 06 3B 3E 20 D7
4F38: 3C 10 FC C9 FF FF FF FF

This is much simpler than the Goldfish example, maybe in part because it 
doesn't autostart. The entire program is stored in the Bally BASIC character 
set, even though it's only using 18 characters here--the hex values 0-F, a 
colon, and a space. It automatically divided into eight bytes per line, with 
the address at the start of each line. It filled out the final line with FF 
even though I didn't tell it to list this far.

Pressing reset when using the Machine Language Manager doesn't actually clear 
the memory, so I turned my system off and on, then loaded and ran the processed 
recording with:

*[READ]{Play the recording to completion and it prints on screen.}
**4F30[CALL]

It does indeed print out the Machine Language Manager character set.

I next took Adam's text version of the Standard Color Generator program and 
tried to format it like this. At first my addresses were off, because I didn't 
realize initially that it was leaving a little space between the code, the 
table, and the color list. So, I couldn't put eight bytes on every line, and I 
wasn't sure if I should put the address range at the top. I ended up just 
trying the following as the .txt file, and it worked fine, displaying a color 
pattern on the TV when run as before, except calling the starting address of 
4EAD.

4EAD: CD 47 23 FF 00 17 B6 13
4EB5: 08 19 EB 4E 03 01 6E 48
4EBD: 3E 55 11 14 06 FF 1C 21
4EC5: DA 4E 16 09 06 08 C5 7E
4ECD: 23 5E 23 01 0E 42 FF 1C
4ED5: C1 10 F3 C9
4EDA: 00 17 55 24 AA 33 FF 3F
4EE2: 00 4C 55 57 AA 64 FF 71
4EEB: AC 86 07 00 CD 5A 2B F9

As far as I can tell, the same technique should work for the other example 
programs in the manual--Critter and 256 Color Program. Are there any other 
Machine Language Manager programs available?

I'll send Adam the files I discussed.

Paul
